Français Virtuose
  • Tags:

    Dégâts contondantDéplacement
  • Name:

    aBodyCharge

  • Displayed name:

    Charge corporelle

  • Description:

    Vous baissez l'épaule et vous jetez en avant, lancé à pleine course, sans plus rien voir que la ligne droite devant vous : ce qui s'y trouve est bousculé, renversé, écarté de votre passage. Vous ne ralentissez pas avant d'être à bout de souffle. La charge se poursuit sur 3 PA, celui qui la déclenche compris, et vous parcourez votre vitesse de déplacement à chacun d'eux. Tant qu'elle dure, vous ne récupérez aucun PA, et la seconde qui suit vous laisse essoufflé.

  • Cast description:

    | PA: vAP.string | TdR: vCD.strings | | :---: | :---: | | **Flux: vFluxOrCost.string ➞ vFluxCost.string** | **Portée: vRange.string** | Sur ce PA et les 2 suivants, vous vous déplacez de votre vitesse de déplacement en ligne droite. Inflige vDamage.string [vDamage.string] dégâts contondants à chaque créature traversée et la repousse sur le côté, hors de votre trajectoire. *Les créatures affectées doivent effectuer un test de **Réflexe**, qui réduit les dégâts de moitié en cas de réussite.*

  • Condition:

    assert(character.sFlux.current >= vFluxCost.value,[[Vous n'avez pas assez de Flux pour utiliser cette action.]])
    
  • AP cost:

    1

  • Cooldown:

    5

  • Flux cost:

    apMod(vAP+3)*cdMod(vCD)*lineMod(2*3*character.sMovement)*puncMod(0,1)*vRange*effect(vDamage*55,70)*autoSave*halfOnSave*noTestMod
  • Variables:

    vRange = ListVariable([[vRange]],[[Portée]],{[[contactMod]]},{[[Contact]]})
    vDamage = NumberVariable([[vDamage]],[[Dégâts]],[[1]],[[10]],[[1]])
    vDamage.valueDisplay.value = [[ self .. "d6"]]
  • On used script:

    character.sFlux:changeCurrent(-vFluxCost.value)
    
  • On post script:

    if (success) then
        action.currentCD.value = vCD.value
        character:addMoveAction("Vous chargez sur {{character.sMovement.current}} mètres et infligez {{vDamage.string}} dégâts contondants à chaque créature traversée, en la repoussant sur le côté.")
    end
    
  • Type:

    1

  • Action effects:

    • Use case:

      1

    • Name:

      Charge corporelle

    • Description:

    • Script:

      effect = character:createEffect([[mBodyCharge]])
      effect.displayName:set([[Charge corporelle]])
      effect.description:set([[La créature charge en ligne droite et ne récupère aucun PA.]])
      effect.duration:set(3)
      effect.script:set([=[character.sRegenAP:addCurrent([[-100%]], [[action]], modifier.displayName.value)]=])
      effect.recurrentScript:set([=[if modifier.duration.value > 1 then
          character:addMoveAction("Vous chargez sur {{character.sMovement.current}} mètres et infligez {{vDamage.string}} dégâts contondants à chaque créature traversée, en la repoussant sur le côté.")
      else
          display([[Charge corporelle]], [[Votre charge vous a épuisé.]])
      end]=])
      
      effect:activate()
      
    • Variables: